package reflect;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface TestMethod {
    /*
        注释里可以定义参数，格式:
        类型  参数名()
        类型:基本或String
        注意：如果当前注释只有一个参数时，通常参数名叫value

        当我们定义了参数，那么在使用当前注释时需要为参数指定值，格式:
        @注解名(参数名1=参数值1,参数名2=参数值2,...)
        参数指定的顺序可以与注解中定义的顺序不一样。

        列如:
        @TestMethod(5)
        注:上述注解没有指定参数名的原因是该注解只有一个参数，并且参数名叫value。
        即:int value();

        如果参数定义时为：int sum();
        那么使用注解时要写成:@TestMethod(sum=5)
     */

//    int value();//属性,类型:基本或String
    int value() default 1;//default:设置默认值
}
